We hypothesize that certain program complexities and difficulties to realize reuse potentials have their roots in weak mechanisms for generic design of today’s programming techniques. We back this hypothesis with empirical studies of program similarity patterns. In three lab projects and two industrial projects, we found 50%-90 % rates of repetitions that deliberately recurred in newly developed, well-designed programs. Not only did those repetitions increase conceptual complexity and size of programs, but also signified unexploited reuse opportunities. With suitable generic design solutions unifying similarities, we could avoid repetitions, raising reuse levels proportionally to the rates of repetitions that we found. Despite this potentia...
When talking about software reuse, a problem that very quickly becomes apparent is "what is be...
Solutions from a part-based platform are inflexible to reuse in development situations as they are n...
The wide acceptance of the “Design Patterns ” [5] has encouraged experts in other software domains t...
Generic design aims at achieving non-redundancy for simplification reasons, by unifying similarity p...
Separation of concerns (SoC) and generic design are two important principles to better control softw...
A high degree of abstraction and capacity for reuse can be obtained in software design through the u...
Generic design and separation of concerns are two important principles to better control software co...
I Generic programming: an abstraction technique to reduce code duplication I Generic programs operat...
Software development organizations live or die based on how effectively they generate, assimilate, r...
Complexity of software quickly approaches the limits of what today’s programming paradigm can handle...
For a component industry to be successful, we must move beyond the current techniques of black box r...
The world is full of programs. More are written every day, and so the corpus of written code is ever...
Software clones – similar program structures repeated in variant forms – increase the risk of update...
Design patterns are reusable abstractions in object-oriented software. However, using current mainst...
Templates (or generics) help us write compact, generic code, which aids both reuse and maintenance. ...
When talking about software reuse, a problem that very quickly becomes apparent is "what is be...
Solutions from a part-based platform are inflexible to reuse in development situations as they are n...
The wide acceptance of the “Design Patterns ” [5] has encouraged experts in other software domains t...
Generic design aims at achieving non-redundancy for simplification reasons, by unifying similarity p...
Separation of concerns (SoC) and generic design are two important principles to better control softw...
A high degree of abstraction and capacity for reuse can be obtained in software design through the u...
Generic design and separation of concerns are two important principles to better control software co...
I Generic programming: an abstraction technique to reduce code duplication I Generic programs operat...
Software development organizations live or die based on how effectively they generate, assimilate, r...
Complexity of software quickly approaches the limits of what today’s programming paradigm can handle...
For a component industry to be successful, we must move beyond the current techniques of black box r...
The world is full of programs. More are written every day, and so the corpus of written code is ever...
Software clones – similar program structures repeated in variant forms – increase the risk of update...
Design patterns are reusable abstractions in object-oriented software. However, using current mainst...
Templates (or generics) help us write compact, generic code, which aids both reuse and maintenance. ...
When talking about software reuse, a problem that very quickly becomes apparent is "what is be...
Solutions from a part-based platform are inflexible to reuse in development situations as they are n...
The wide acceptance of the “Design Patterns ” [5] has encouraged experts in other software domains t...